﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace BoletoElectronicoDesktop.CargaCredito
{
    public partial class FormCargaCredito : Form
    {
        public FormCargaCredito()
        {
            InitializeComponent();
            //oculto el calendario
            monthCalendar1.Hide();
        }

        private void FormCargaCredito_Load(object sender, EventArgs e)
        {
            //abro el formulario maximizado
            this.WindowState = FormWindowState.Maximized; 
        }

        private void btnSeleccionFecha_Click(object sender, EventArgs e)
        {
            //trae a la vista el calendario para elegir
            monthCalendar1.Visible = true;
        }

        private void monthCalendar1_DateSelected(object sender, DateRangeEventArgs e)
        {
            //pongo en el text box la fecha seleccionada
            string fecha = monthCalendar1.SelectionRange.Start.ToShortDateString();
            txtFechaAlta.Text = Funciones.convierteFecha(fecha);
            monthCalendar1.Hide();
         
        }

        private void txtNroTarjeta_KeyPress(object sender, KeyPressEventArgs e)
        {
            //valido que se ingrese un numero
            Funciones.validarNumero(e);
        }

        private void btnLimpiar_Click(object sender, EventArgs e)
        {
            //limpio los textbox para una nueva operacion
            txtMonto.Text = "";
            txtNroTarjeta.Text = "";
            txtFechaAlta.Text = "";
        }

        private void monthCalendar1_DateChanged(object sender, DateRangeEventArgs e)
        {

        }

        private void BtnGuardar_Click(object sender, EventArgs e)
        {
            bool continuar = true;
            
            //valido que ningún campo obligatorio no esté completo
            if ((txtNroTarjeta.Text == "") || (txtFechaAlta.Text == "") || (txtMonto.Text == ""))
            {
                MessageBox.Show("Complete todos los campos obligatorios", "Información");
                continuar = false;
            }
            //si están todos los campos completos, procedo a hacer el Alta
            if (continuar)
            {
                //Comprobamos que la tarjeta exista y es activa
                DataTable DT = TarjetaDAO.FiltrarTarjetasHabilitadas(txtNroTarjeta.Text, "", "");
                int existe = DT.Rows.Count;
                if (existe != 0)
                {
                    //si existe sigo la carga

                    CargaDAO.Insertarcarga(txtNroTarjeta.Text, txtFechaAlta.Text, txtMonto.Text.Replace(',','.'));
                    MessageBox.Show("Carga exitosa!");

                    //limpio los textbox
                    txtNroTarjeta.Text = "";
                    txtFechaAlta.Text = "";
                    txtMonto.Text = "";
                 }
                else //la tarjeta no existe o no esta habilitada => no puedo seguir
                {
                    MessageBox.Show("La tarjeta ingresada no existe o no esta habilitada. Reingrese otro numero");
                }
            }
        
        
        }

        private void txtMonto_KeyPress(object sender, KeyPressEventArgs e)
        {
            Funciones.validarDecimal(e);
        }

        private void label5_Click(object sender, EventArgs e)
        {

        } 



       
   
    
    
    
    
    
    }//fin partial class
}
